The present invention relates to a robot control apparatus and its method for controlling a teaching, operation, and the like of an industrial robot. In particular, the invention relates to a robot control apparatus having an outstanding reliability and maintainability, and a great extensibility.
FIG. 7 is a general architectural view of a robotic system of the prior art, and FIG. 8 is a block diagram of an exemplary structure of a robot control apparatus of the prior art. A manipulator 4 is controlled by a robot control apparatus 30, as shown in FIG. 7. The robot control apparatus 30 of the prior art comprises a main control circuit 301 for performing a centralized control of a robot, a servo controller circuit 302 for controlling a servo motor, and a servo amplifier 303 for driving the servo motor, all in one unit, as show in FIG. 8. The main control circuit 301 is composed of a processor (CPU) 301a, a random-access memory (RAM) 301b and a read-only memory (ROM) 301c. The CPU 301a performs various kinds of computations for control of the robot using a numerous data such as a teaching data, a coordinate system data, and the like of the robot stored in the RAM 301b, composed as a nonvolatile memory in a portion thereof, according to a system program stored in the ROM 301c. The main control circuit 301aand a servo controller circuit 302 are connected by a data bus 304, and an operating command from the main control circuit 301 is converted by the servo controller circuit 302 into a command for servo control, with which a servo amplifier 303 controls a servo motor 40 for operating each axle of a robot manipulator. An I/O interface 305 is connected to the data bus 300 for executing an I/O control of an external apparatus such as a robot hand and the like, not shown in the figure. Furthermore, a serial interface 306 is also connected to the data bus 300, and a teaching device for teaching a movement of the robot is connected to the serial interface 306.
Since such a robot control apparatus of the prior art has been composed as above, the main control circuit has been disposed in vicinity of the servo amplifier, which tends to generate heat and electric noise. Moreover, there is often such a case wherein the control apparatus itself is disposed in vicinity of the manipulator performing physical works, and used under an adverse environment of high temperatures and dusty particles, etc. Since there is a possibility for the main control circuit, which governs control of the robot, to cause a malfunction or to receive damages due to the foregoing internal and external factors, there requires appropriate measures to improve cooling, a noise immunity, dust-tightness, and so on in order to prevent them.
Furthermore, as the CPU in the main control circuit takes charge of various computations such as a locus generation, and calculation of an acceleration and deceleration of the robot, an operational performance of the robot depends upon a processing capacity of the CPU. Therefore, it is necessary to increase a capacity of the main control circuit, including this CPU, in order to improve a kinetic performance of the robot. However, a change of the CPU necessitates changes for a width of the bus, a transmission speed, a transmission mode, and so on of the data bus. In addition, it also requires modification of the servo controller circuit, the I/O interface, the serial port, etc. connected to the data bus.
Next, since the system program for the robot is stored in the ROM within the robot control apparatus, it is necessary to replace the ROM in order to renew the system program. However, if the robot control apparatus is installed at a high location, in a narrow space, or the like, a replacement of the ROM gives rise to a problem that it is difficult to ensure safety of a worker as the workability is extremely poor.
On the other hand, the teaching data, etc. of the robot are stored in the RAM composed of a nonvolatile memory. However, since the RAM needs to be kept energized with a battery and the like at all the time in order for it to maintain the stored data, it is necessary to back up this data to another memory device to prevent a loss of the data due to degradation and the like of the battery. Back up of the data can be accomplished by connecting the robot control apparatus to a personal computer via an interface such as a serial port, and then to an external recording device. However, a task required for the backup is complex, and it takes a long working hours, giving rise to another problem. Moreover, this task of backup also has a problem common to the afore-said replacement of the ROM that it is difficult to ensure safety of the worker, as the workability is extremely poor if the robot control apparatus is installed at a high location, in a narrow space, etc.
In addition, it is not easy to connect and use general purpose peripheral devices such as a display device like a monitor, etc., an input device like a keyboard, etc., and a telecommunications device like a network, etc. to the data bus and to the robot control apparatus, since architecture of the hardware such as the main control circuit and the data bus is of customizes composition. It is therefore necessary to prepare a separate custom-made interface individually for connecting the robot control apparatus to each of these devices, in order to use them. This presents still another problem that makes it difficult to expand the system freely, since there is a great deal of restriction to the kind of peripheral devices that can be connected and used with the robot control apparatus.
The present invention has been made to obviate the above-cited problems, and has an object to provide a robot control apparatus and a method thereof having a great extensibility and maintainability, as well as an outstanding reliability in its system.
A robot control apparatus of the present invention comprises a servo amplifier for controlling a driving source of a robot, an auxiliary control unit for outputting a driving control command to the servo amplifier, and a main control unit provided separately from the auxiliary control unit for outputting a control command for an operation of the robot to the auxiliary control unit through communication means. A method of controlling the robot comprises a step of generating a robot control command, and a step of outputting the control command for controlling the robot through the communication means, both performed in the main control unit. On the other hand, the auxiliary control unit takes a step of receiving the robot control command from the main control unit, a step of converting the command into another command to be transmitted to the servo amplifier, and a step of transmitting the converted command to the servo amplifier.
Also, the robot control apparatus of the present invention is provided with a nonvolatile data storage device and an external interface for connecting with a data bus in the main control unit.
Further, the robot control apparatus of the present invention is provided, also in the main control unit, with an auxiliary storage device for backup of data stored in the data storage unit of the main control unit.
In the robot control apparatus of the present invention, the main control unit transmits to the auxiliary control unit, a robot position control command calculated by the main control unit based on a teaching position data for the robot stored in the data storage device of the main control unit.
Furthermore, in the robot control apparatus of the present invention, a servo controller circuit performs an ON/OFF control of the servo amplifier based on an ON/OFF control signal for the servo amplifier transmitted from the main control unit to the auxiliary control unit. The method of controlling the robot in this process includes a step of outputting the ON/OFF control signal for the servo amplifier from the main control unit to the auxiliary control unit.
Moreover, in the robot control apparatus of the present invention, the servo controller circuit renders the servo amplifier to temporarily suspend and to restart its control based on a temporary suspension signal and a restart signal for the robot operation transmitted from the main control unit to the auxiliary control unit. The method of controlling the robot in this process includes a step of outputting the temporary suspension signal and the restart signal of the robot operation from the main control unit to the auxiliary control unit.
Also, the robot control apparatus of the present invention is provided with a timer means in the auxiliary control unit, and a robot suspension means for deactivating the servo amplifier, when a non-receiving time for the robot control command to be transmitted by the main control unit becomes equal to or longer than a pre-established period of time. The method of controlling the robot in this process includes a step of counting time in the auxiliary control unit for not receiving a command from the main control unit, a step of making a determination of a timeout when the non-receiving time becomes equal to or longer than the pre-established time period, and a step of deactivating the servo amplifier if a timeout is determined.
Furthermore, the robot control apparatus of the present invention is provided with a robot suspension means for deactivating the servo amplifier, if the main control unit does not return to the auxiliary control unit a signal corresponding to a prior signal that the auxiliary control unit has transmitted to the main control unit. The method of controlling the robot in this process includes a step for the auxiliary control unit to output a signal to the main control unit, a step of receiving a response signal from the main control unit, a step of verifying whether the response signal is a signal corresponding to the transmitted signal, and a step of deactivating the servo amplifier, if the response signal does not correspond to the transmitted signal.
Moreover, the robot control apparatus of the present invention is provided with a timer means in the main control unit, and a determination means also in the main control unit for determining either the auxiliary control unit or the communication means is out of order, if the main control unit does not receive a signal from the auxiliary control unit for a pre-established period of time or longer. The method of controlling the robot in this process includes a step of counting time in the main control unit for not receiving a signal from the auxiliary control unit, a step of making a determination of a timeout when the non-receiving time becomes equal to or longer than the pre-established time period, and a step of determining either the auxiliary control unit or the communication means is out of order if a timeout is determined.
Further, the robot control apparatus of the present invention is provided with a determination means in the main control unit for determining either the auxiliary control unit or the communication means is out of order, if a signal corresponding to the signal transmitted to the auxiliary control unit from the main control unit is not returned from the auxiliary control unit. The method of controlling the robot in this process includes a step for the main control unit to output a signal to the auxiliary control unit, a step of receiving a response signal from the auxiliary control unit, a step of verifying whether the response signal is a signal corresponding to the transmitted signal, and a step of determining either the auxiliary control unit or the communication means is out of order, if the response signal does not correspond to the transmitted signal.
Furthermore, the robot control apparatus of the present invention is provided with a centralized control unit connected to the main control unit via communication means, a timer means in the centralized control unit, and a determination means also in the centralized control unit for determining either the main control unit or the communication means is out of order, if the centralized control unit does not receive a signal from the main control unit for a pre-established period of time or longer. The method of controlling the robot in this process includes a step of counting time in the centralized control unit connected to the main control unit via the communication means for not receiving a signal transmitted from the main control unit, a step of making a determination of a timeout when the non-receiving time becomes equal to or longer than the pre-established time period, and a step of determining either the main control unit or the communication means is out of order if a timeout is determined.
Moreover, the robot control apparatus of the present invention is provided with a centralized control unit connected to the main control unit via the communication means, and a determination means in the centralized control unit for determining that the main control unit or the communication means is out of order, if a signal corresponding to the signal transmitted to the main control unit from the centralized control unit is not returned from the main control unit. The method of controlling the robot in this process includes a step for the centralized control unit connected to the main control unit via the communication means to output a signal to the main control unit, a step of receiving a response signal from the main control unit, a step of verifying whether the response signal is a signal corresponding to the transmitted signal, and a step of determining either the main control unit or the communication means is out of order, if the response signal does not correspond to the transmitted signal.